export default {
  //自定义等待指令
  loading: {
    mounted(el: any, binding: any) {
      // el.addEventListener('click',()=>{
      //     if(!el.disabled){
      //         el.disabled=true
      //         setTimeout(()=>{
      //             el.disabled=false
      //         },binding.value||2000)
      //     }
      // })
      console.log(el, binding.value);
    }
  },
  // 自定义点击元素外部指令
  clickOutside: {
    mounted(el: any, binding: any) {
      function eventHandler(e: any) {
        if (el.contains(e.target)) {
          return false
        }
        // 如果绑定的参数是函数，正常情况也应该是函数，执行
        if (binding.value && typeof binding.value === 'function') {
          binding.value(e)
        }
      }
      // 用于销毁前注销事件监听
      el.__click_outside__ = eventHandler
      // 添加事件监听
      document.addEventListener('click', eventHandler)
    },
    beforeUnmount(el: any) {
      // 移除事件监听
      document.removeEventListener('click', el.__click_outside__)
      // 删除无用属性
      delete el.__click_outside__
    }
  }
};
